- Published on
¿Cómo borrar ramas fusionadas en Git de forma rápida?
- Authors
- Name
- Hidetoshi Yanagisawa
Introducción
¡Hola!
Si trabajas con ramas en Git, seguro alguna vez te pasó esto:
“Ya fusionamos esa rama hace rato, ¿por qué sigue ahí molestando?”
Hoy te cuento cómo eliminar en masa las ramas que ya están fusionadas y cómo automatizarlo para que lo puedas hacer en segundos ✨
- 🧪 Ver qué ramas ya están fusionadas
- 🧹 Eliminar ramas fusionadas (excepto develop y main)
- ⚙️ Automatizar con un alias en .gitconfig
- 🔒 ¿Querés excluir otras ramas?
- 🌎 Limpiar también las ramas remotas que ya no existen
- 🧼 Alias completo para limpieza local + remota
- Conclusión
🧪 Ver qué ramas ya están fusionadas
Primero, para ver una lista de las ramas que ya se fusionaron en tu rama actual:
git branch --merged
Si ves muchas que ya no usás, ¡vamos a borrarlas!
🧹 Eliminar ramas fusionadas (excepto develop y main)
git branch --merged | egrep -v '\*|develop|main' | xargs git branch -d
¿Qué hace cada parte?
--merged
: muestra ramas ya fusionadasegrep -v
: excluye ramas importantes comomain
odevelop
xargs git branch -d
: borra todas las que quedaron
.gitconfig
⚙️ Automatizar con un alias en ¿Querés hacerlo aún más fácil? Agregá este alias a tu archivo ~/.gitconfig
:
[alias]
delete-merged-branch = "!f () { git checkout $1; git branch --merged | egrep -v '\\*|develop|main' | xargs git branch -d; }; f"
👉 Cómo usarlo:
git delete-merged-branch develop
Esto hace:
- Cambiarte a
develop
- Borrar todas las ramas que ya fueron fusionadas en ella (excepto las importantes)
🔒 ¿Querés excluir otras ramas?
Podés agregar más nombres a la lista de exclusión, por ejemplo:
egrep -v '\\*|main|develop|release'
🌎 Limpiar también las ramas remotas que ya no existen
Aunque borres ramas en GitHub o GitLab, a veces siguen apareciendo en tu local. Para eso:
git fetch --prune
🧼 Alias completo para limpieza local + remota
[alias]
vacuum = "!f () { git checkout $1; git branch --merged | egrep -v '\\*|develop|main' | xargs git branch -d; git fetch --prune; }; f"
Así podés ejecutar:
git vacuum develop
Y Git hará una limpieza completa: local y remota 🧽✨
Conclusión
Limpiar las ramas fusionadas:
- Es fácil
- Te ahorra confusiones
- Y con un alias, ¡lo hacés en segundos!
Probalo y mantené tu repo tan ordenado como tu escritorio (o más 😄)